// 统计LCP时间 最大内容绘制时间，指页面中最大可见元素（如图片、视频等）完成渲染的时间
import { lazyReportBatch } from '../report';
export default function observerLCP() {
  const entryHandler = (list) => {
    if (observer) {
      observer.disconnect();
    }
    for (const entry of list.getEntries()) {
      const json = entry.toJSON();
      console.log(json);
      const reportData = {
        ...json,
        type: "performance",
        subType: entry.name,
        pageUrl: window.location.href,
      };
      // 发送数据 todo;
      lazyReportBatch(reportData);
    }
  };
  // 统计和计算lcp的时间
  const observer = new PerformanceObserver(entryHandler);
  // buffered: true 确保观察到所有paint事件
  observer.observe({ type: "largest-contentful-paint", buffered: true });
}
